En PHP, la declaración `foreach` se utiliza principalmente para iterar sobre estructuras de datos que implementan la interfaz `Traversable`, como arrays y objetos. A continuación, se explicará cómo utilizar `foreach` específicamente con arrays en PHP, incluyendo varios ejemplos prácticos y se proporcionarán las fuentes que se usaron para construir la respuesta.
La sintaxis básica de `foreach` es la siguiente:
```php
foreach ($array as $value) {
// Código a ejecutar
}
```
Aquí `$array` es el array que queremos recorrer e `$value` es una variable que en cada iteración del bucle contendrá el valor del elemento actual del array.
Consideremos el siguiente ejemplo sencillo:
```php
$frutas = array(“manzana”, “banana”, “cereza”);
foreach ($frutas as $fruta) {
echo $fruta . “\n”;
}
```
En este ejemplo, el bucle `foreach` imprimirá cada una de las frutas en el array `$frutas`:
```
manzana
banana
cereza
```
Además de iterar solo sobre los valores, `foreach` también puede iterar sobre los pares de clave-valor de un array asociativo. La sintaxis es la siguiente:
```php
foreach ($array as $key => $value) {
// Código a ejecutar
}
```
Ejemplo práctico:
```php
$edades = array(“Juan” => 25, “Ana” => 27, “Pedro” => 19);
foreach ($edades as $nombre => $edad) {
echo “$nombre tiene $edad años\n”;
}
```
Resultados:
```
Juan tiene 25 años
Ana tiene 27 años
Pedro tiene 19 años
```
Es posible modificar los valores del array durante la iteración utilizando una referencia (`&`):
```php
$numeros = array(1, 2, 3, 4, 5);
foreach ($numeros as &$numero) {
$numero = $numero * 2;
}
print_r($numeros);
```
Resultados:
```
Array
(
[0] => 2
[1] => 4
[2] => 6
[3] => 8
[4] => 10
)
```
En este caso, cada elemento del array `$numeros` se multiplica por 2.
Los arrays multidimensionales (arrays dentro de arrays) también pueden ser iterados usando `foreach`. Ejemplo:
```php
$matriz = array(
array(1, 2, 3),
array(4, 5, 6),
array(7, 8, 9)
);
foreach ($matriz as $fila) {
foreach ($fila as $numero) {
echo $numero . “ “;
}
echo “\n”;
}
```
Resultados:
```
1 2 3
4 5 6
7 8 9
```
La declaración `foreach` en PHP es extremadamente útil para la manipulación de arrays, ya que permite iterar de manera sencilla sobre valores y pares clave-valor, modificar elementos y trabajar con estructuras de datos complejas como arrays multidimensionales.
Fuentes utilizadas:
- [PHP.net Manual – Foreach](https://www.php.net/manual/en/control-structures.foreach.php)
- [W3Schools – PHP foreach Loop](https://www.w3schools.com/php/php_looping_foreach.asp)
Estas fuentes proporcionan una base confiable y detallada para entender y aplicar `foreach` en diversos contextos al trabajar con arrays en PHP.